package com.gagakuai.engine.runtime;

/*
*
*  执行实例（Execution）代表着流程实例执行过程中的一个特定状态，
* 它可以看作是流程实例在流程定义中的一个具体执行过程。
* 每当流程执行到某个节点时，就会创建一个执行实例，
* 执行实例负责记录当前流程实例所处的位置、
* 执行的环境信息以及执行过程中的变量等。
* 执行实例之间通过树形结构相互关联，反映了流程实例的执行路径。

* 执行实例可以用来表示以下几种情况：
*
* 流程实例当前所处的执行状态，包括当前正在执行的任务、当前所在的节点等。
* 活动的执行过程中所使用的变量信息，如流程变量、任务变量等。
* 执行实例之间的关系，反映了流程实例的执行路径和流程的执行历史。
*
*
*/
public interface Execution {

    String getId();

    /*
     * 是否挂起
     */
    boolean isSuspected();

    /*
     * 是否结束
     */
    boolean isEnded();

    /*
     * 获取当前活动id
     */
    String getActivityId();

    /*
     * 获取当前流程实列id
     */
    String getProcessInstanceId();

    /*
     * 获取到父执行Id
     */
    String getSuperExecutionId();

    String getTenantId();

    String getName();

    String getDescription();
}